Amazon Elasticsearch ServiceがVPCをサポートしました
まいど、大阪の市田です。 本日のアップデートでAmazon Elasticsearch ServiceがVPCをサポートしました。
AWS Developer Forums: Amazon Elasticsearch Service now supports Amazon Virtual Private Cloud (VPC)
試してみた
それではマネジメントコンソールから作成してみます。
ドメインの名前を付けます。バージョンはデフォルトの「5.5」のまま「Next」をクリックします。
インスタンス数は「2」として、複数のサブネットにMulti-AZで構成するため「Enable zone awareness」にチェックを入れておきます。
次の画面で「VPC access」を選択して下さい。サブネットが2つ選択出来ます。セキュリティグループは複数選択することが可能です。 VPCがサポートされてますね!
アクセスポリシーは「Do not require signing request with IAM credential」を選択します。カッコ書きの説明にあるように、セキュリティグループで許可されたものがアクセス可能となります。
ポリシーの内容は次のようなものになります。
レビューで問題なければ作成します。
また、セキュリティグループは同じVPCからのアクセスを許可するようにしました。
作成完了後、インスタンスのエンドポイントに対して名前解決を行ってみると、VPCのプライベートIPが返ってきました。
dig +short vpc-esprivate-xxxxxxxxxxxxxxxxxxxxxxxxxx.ap-northeast-1.es.amazonaws.com 192.168.4.144 192.168.3.156
次に、同じVPCにWindows Serverを立ててkibanaの画面にアクセスしてみます。見れましたね。
VPC外(ローカルのPC)からはアクセスできません。
次に、同じVPC上のインスタンスからデータを登録してみます。
$ curl -XPUT https://vpc-esprivate-xxxxxxxxxxxxxxxxxxxxxxxxxx.ap-northeast-1.es.amazonaws.com/testidx/test/1 -d ' > { > "title": "test1", > "body": "body1" > } > ' {"_index":"testidx","_type":"test","_id":"1","_version":1,"result":"created","_shards":{"total":2,"successful":2,"failed":0},"created":true} $ curl -XPUT https://vpc-esprivate-xxxxxxxxxxxxxxxxxxxxxxxxxx.ap-northeast-1.es.amazonaws.com/testidx/test/2 -d' { > "title":"test2", > "body":"body2" > }' {"_index":"testidx","_type":"test","_id":"2","_version":1,"result":"created","_shards":{"total":2,"successful":2,"failed":0},"created":true}
投入したデータをkibanaで確認できました。
最後に
VPC内にインスタンスが作成できることで、セキュアに利用できる用途が広がったと思います。ぜひご活用下さい。
以上です。